package cn.mango.app.common;

/**
 * 字符串操作工具类
 * @author Damet Liu
 * @version 1.0
 * @created 2013-3-23
 */
public abstract class StringUtils {
	/**
	 * 判断字符串是否为空字符
	 * 包括null和“null”字符、长度为0的""
	 * 也包括空格、换行、回车、制表符
	 * @param input 需要检查的字符串
	 * @return 如果是空字符串返回true；否则返回false
	 */
	public static final boolean isEmpty(CharSequence input) {
		//如果对象为null | 内部没有字符  | 字符串为null
		//返回为真，这里的“null”用于修正某些情况下的数据错误
		if(null == input || input.length() == 0 || "null".equals(input))
			return true;
		
		//如果仅存在换行、空格、制表符，也应该判断为空字符
		for(int i = 0; i < input.length(); i++)
		{
			char c = input.charAt(i);
			if(c != ' ' && c != '\t' && c != '\r' && c != '\n')
				return false;
		}
		
		return true;
	}
}
